From 6ed38332916e3e7e4407019d2bad262e93fe5872 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Wed, 16 Jul 2008 11:12:36 +0100 Subject: [PATCH] xend: Fix destruction of VMMetrics objects for managed domains While plugging a xend memory lead (c/s 18030), I introduced a bug in the case of managed domains. Managed domains continue to exist after shutdown and thus should not have their associated VMMetrics object destroyed until deleted. The bug actually manifested by a new -> start -> shutdown -> delete sequence of operations. Shutdown destroyed the VMMetrics object and delete tried to do the same :-): Signed-off-by: Jim Fehlig --- tools/python/xen/xend/XendDomainInfo.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/python/xen/xend/XendDomainInfo.py b/tools/python/xen/xend/XendDomainInfo.py index b6514cde0c..5052009158 100644 --- a/tools/python/xen/xend/XendDomainInfo.py +++ b/tools/python/xen/xend/XendDomainInfo.py @@ -2618,7 +2618,9 @@ class XendDomainInfo: def _cleanupVm(self): """Cleanup VM resources. Idempotent. Nothrow guarantee.""" - self.metrics.destroy() + from xen.xend import XendDomain + if not XendDomain.instance().is_domain_managed(self): + self.metrics.destroy() self._unwatchVm() try: -- 2.30.2